package com.cet.algorithm.test.数组;

import java.util.TreeSet;

/**
 * @program: cet-practice
 * @description: 第三大的数
 * @author: 陈恩涛
 * @create: 2023-05-14 13:10
 **/
public class LC414 {

    /**
     * 寻找无序数组中第三大的元素
     * @param nums 无序数组
     * @return 第三大的元素
     */
    public int thirdMax(int[] nums) {
        TreeSet<Integer> treeSet = new TreeSet<>(Integer::compare);
        for (int num : nums) {
            treeSet.add(num);
            if (treeSet.size() > 3) {
                treeSet.remove(treeSet.first());
            }
        }
        return treeSet.size() == 3 ? treeSet.first() : treeSet.last();
    }

}

class Client414{
    public static void main(String[] args) {
        LC414 lc414 = new LC414();
        System.out.println(lc414.thirdMax(new int[]{1, 2}));
    }
}
